/*
 * Copyright [2022] [https://www.xiaonuo.vip]
 *
 * Snowy采用APACHE LICENSE 2.0开源协议，您在使用过程中，需要注意以下几点：
 *
 * 1.请不要删除和修改根目录下的LICENSE文件。
 * 2.请不要删除和修改Snowy源码头部的版权声明。
 * 3.本项目代码可免费商业使用，商业使用请保留源码和相关描述文件的项目出处，作者声明等。
 * 4.分发源码时候，请注明软件出处 https://www.xiaonuo.vip
 * 5.不可二次分发开源参与同类竞品，如有想法可联系团队xiaonuobase@qq.com商议合作。
 * 6.若您的项目无法满足以上几点，需要更多功能代码，获取Snowy商业授权许可，请在官网购买授权，地址为 https://www.xiaonuo.vip
 */
package vip.xiaonuo.biz.modular.algorithmConfig.param;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * 算法配置添加参数
 *
 * @author mengxiaowei
 * @date  2024/09/12 14:47
 **/
@NoArgsConstructor
@Data
@Getter
@Setter
public class ReceiveSleepReportParam {


    @JsonProperty("userId")
    private String userId;
    @JsonProperty("deviceId")
    private String deviceSn;
    @JsonProperty("timestamp")
    private Integer timestamp;


    @JsonProperty("reportId")
    private String reportId;
    @JsonProperty("radio")
    private RadioDTO radio;

    @NoArgsConstructor
    @Data
    public static class RadioDTO {
        @JsonProperty("goBed")
        private String goBed;
        @JsonProperty("outBed")
        private String outBed;
        @JsonProperty("inBed")
        private Integer inBed;
        @JsonProperty("maxHR")
        private Integer maxHR;
        @JsonProperty("minHR")
        private Integer minHR;
        @JsonProperty("maxRR")
        private Integer maxRR;
        @JsonProperty("minRR")
        private Integer minRR;
        @JsonProperty("moveCount")
        private Integer moveCount;
        @JsonProperty("outBedCount")
        private Integer outBedCount;
        @JsonProperty("info")
        private String info;
        @JsonProperty("goSleep")
        private String goSleep;
        @JsonProperty("sleep")
        private Integer sleep;
        @JsonProperty("weak")
        private Integer weak;
        @JsonProperty("light")
        private Integer light;
        @JsonProperty("deep")
        private Integer deep;
        @JsonProperty("score")
        private Integer score;
    }
}
